home *** CD-ROM | disk | FTP | other *** search
/ Pascal Super Library / Pascal Super Library (CW International)(1997).bin / MLT_TASK / PIBMDOS / GLOBSCRN.PAS < prev    next >
Pascal/Delphi Source File  |  1988-06-03  |  2KB  |  49 lines

  1. UNIT GlobScrn;
  2.  
  3. INTERFACE
  4.  
  5. USES
  6.    Dos, Crt;
  7.  
  8. (*----------------------------------------------------------------------*)
  9. (*          Definitions for screen memory reading/writing               *)
  10. (*----------------------------------------------------------------------*)
  11.  
  12. CONST
  13.    EGA_Screen_Address      = $A000    (* Address of EGA color screen      *);
  14.    Color_Screen_Address    = $B800    (* Address of color screen          *);
  15.    Mono_Screen_Address     = $B000    (* Address of mono screen           *);
  16.    Screen_Length           = 4000     (* 80 x 25 x 2 = screen area length *);
  17.    Graphics_Screen_Length  = 16000    (* Length of graphics screen area   *);
  18.    EGA_Graphics_Scr_Length = 32000    (* Length of EGA graphics screen    *);
  19.    Max_Saved_Screen        = 6        (* Maximum no. of saved screens     *);
  20.    MedRes_GraphMode        = 4        (* Medium resolution graphics       *);
  21.    HiRes_GraphMode         = 6        (* High resolution graphics mode    *);
  22.    Mono_TextMode           = 7        (* Monochrome adapter text mode     *);
  23.    EGA_GraphMode           = 16       (* EGA adapter graphics mode        *);
  24.    CRT_Index               = $03D4    (* CRT index register               *);
  25.    CRT_Data                = $03D5    (* CRT data register                *);
  26.    CRT_Mode                = $03D8    (* CRT mode register                *);
  27.    CRT_Color_Select        = $03D9    (* CRT color select register        *);
  28.    CRT_Status              = $03DA    (* CRT status port                  *);
  29.    CRT_Mode_Byte           = $0465    (* CRT mode byte                    *);
  30.  
  31. TYPE
  32.                                      (* A screen image            *)
  33.  
  34.    Screen_Type       = ARRAY[ 1 .. EGA_Graphics_Scr_Length ] OF BYTE;
  35.  
  36.    Screen_Ptr        = ^Screen_Type;
  37.  
  38. VAR
  39.    Write_Screen_Memory : BOOLEAN   (* TRUE to allow direct screen writes *);
  40.    Wait_For_Retrace    : BOOLEAN   (* TRUE to wait for retrace signals   *);
  41.  
  42. CONST                              (* Default maximum screen width       *)
  43.    Max_Screen_Col      : INTEGER = 80;
  44.  
  45. IMPLEMENTATION
  46.  
  47. END   (* GlobScrn *).
  48.  
  49.